草庐IT

c++ - std::move 操作 C++

全部标签

c++ - 每 N 秒执行一次与 Windows 系统时钟同步的操作

有很多关于如何每N秒执行某项操作的提示,但我没有发现任何内容明确说明这些方法中的任何一个是否由于延迟而慢慢地与系统时钟不同步。我有一个在Windows上运行的多线程应用程序。我需要知道在更高优先级任务和线程允许的尽可能少的毫秒内,一个特定线程将根据系统时钟在“精确”凌晨1点可靠地执行,然后在凌晨1点+N秒、凌晨1点+2N秒等。..并在晚上11点、晚上11点+N、晚上11点+2N之前一直可靠地执行此操作,依此类推。是的-情况(无论如何对我来说)每小时有整数个N秒周期。我完全希望线程执行的实际时间为1am+d1、1am+N+d2、1am+2N+d3,...其中每个d(i)都是一些延迟增量。

c++ - 将 .a 文件转换为 .dll

这个问题在某处肯定有答案,但我找不到。我写Java已经十多年了,我的C经验是在Unix上,所以我在这里有点直截了当。根据我的Unix经验,其他人编写了makefile并且它可以正常工作。我已经从feep下载了libtar-1.2.11的C源代码,并从cygwin内部运行了make。这创建了一个.a文件和一个.exe文件。EXE文件似乎本质上是tar以在Windows上运行,但我想要的是让库在我自己的代码中读取和处理文件。如果我没记错的话,那些应该在.a文件(存档??)中,并且需要将其链接到我可以从我的C++程序中使用的库中。所以我正在寻找一种方法来做到这一点。我正在编写一个将使用.tg

c# - Windows Mobile 5 SDK 是否适用于 Windows 7.5 芒果操作系统手机

我想为HTCMozart这样的Windows7.5芒果操作系统手机开发应用程序,我已经拥有VisualStudio2008,Windows手机是否支持由WindowsMobile5智能手机SDK构建的应用程序? 最佳答案 不,WindowsPhoneSDK是唯一受支持的。简而言之,WindowsMobile!=WindowsPhone。此外,用户界面也大不相同,底层运行时和.NET框架也不同。您或许可以轻松地将代码逻辑移植到新的SDK,但UI需要重写。作为“用户为王”的新迭代也失去了很多自由。这意味着您需要查看当前应用的要求和提供的

可以仅使用 C 来利用 Windows API 吗?

我正在自学C(来自Java)。我非常欣赏这门语言,我学习它的主要原因之一是我可以利用Java内置的JNI功能在必要时编写native代码。我的问题主要是关于WindowsAPI。我可以仅使用C来使用API的功能和特性吗?WindowsAPI是否与纯C代码兼容,或者它是否包含只能由C++代码使用的类等?此外,如果我在Windows机器上将共享库编译为(lib.slNOTlib.dll),它可以在另一台机器(Mac/Linux)上运行吗? 最佳答案 WindowsAPI(又名Win32API)是一个纯C库。不可以,你不能在另一台非Win

windows - 如何禁用 Windows 注册表中的剪切、复制、粘贴、重命名等操作?

我正在尝试在VB.Net中创建一个软件作为我的uni项目,以禁用Windows7电脑的以下功能。我认为必须从Windows注册表的上下文菜单中禁用它们,但我不想禁用整个上下文菜单,而是想单独禁用以下项。剪切、复制、粘贴、重命名、删除、打开、打印、共享、创建快捷方式、打开方式、发送到、新建、属性。我想为用户提供通过复选框有选择地/单独地禁用它们的选项,这样这些选项将在鼠标右键单击时被禁用。我的问题是我不知道哪个键是禁用的正确键,因为注册表太大而且一些键的名称相似。谁能帮我说说Windows注册表中上述右键单击功能的确切关键位置是什么,或者如何去做? 最佳答案

c++ - _stricmp 在字符串匹配时返回错误值。该怎么办?

我有这段代码:second=strtok(NULL,"\n");logprintf(second);if(_stricmp(second,"WINDOWS")==0)logprintf将数据打印到日志文件中,并打印“WINDOWS”(不带引号)。但是_stricmp以某种方式返回13..所以if检查永远不会通过。我尝试过使用sscanf/sprintf/其他字符串方式,但都没有用。我没主意了。完整代码:#ifdefWIN32charbuf[65535];boolfound=false;boolinstall=false;boolinstalling=false;unsignedinti

c - 我应该在项目开始时考虑 GUI 吗?

我想在C中启动一个ProcessManager项目,它应该有一个图形用户界面。这是我的第一个GUI项目,我对此一无所知。经过一些搜索,我发现我应该使用winapi32库。我的问题是:我应该像基于控制台那样编写我的项目,然后向其中添加GUI,还是应该在项目开始时考虑GUI? 最佳答案 我想说最好将应用程序编写为命令行应用程序,然后在GUI中编写包装器。通过这种方式,您可以获得最灵活的应用程序,将GUI和功能完全分离。但我不会说!:-)根据我的经验,很难将GUI从应用程序中完全分离出来,因此您应该在构建它时考虑到GUI。您的代码必须打开

c++ - 组框外观

我使用的是VisualStudio2008专业版。我在对话框编辑器中设计了以下对话框:请密切注意名为“任务”的对话框中的组框。它在这里看起来不错,但是当我将它显示为应用程序中的无模式对话框时,该GroupBox的外观和感觉突然变为-:突然之间,对话框编辑器中指定的原始蓝色标题和圆角边缘消失了,取而代之的是黑色前景和方形边缘。我想知道为什么会突然发生这种情况,我希望它以对话框编辑器中指定的外观显示。以下代码存在于我的对话框资源文件(Timer.rc)中:IDD_FORMVIEWDIALOGEX0,0,204,118STYLEDS_ABSALIGN|DS_SETFONT|DS_SETFOR

c - ProcessID困惑

我很困惑。为什么notepad.exe有三个不同的进程ID?1)Spy++说000000A48(嗯?)2)任务管理器说:26323)GetWindowThreadProcessId说:1744我想2632是在SetWindowsHookEx中使用的正确值(作为dwThreadId参数),但是如果GetWindowThreadProcessId返回其他内容,我如何找到正确的值? 最佳答案 一个进程只有一个唯一的进程ID。但是Spy++将值报告为十六进制,而任务管理器将其报告为十进制。现在,A48(十六进制)等于2632(十进制)。另一

c++ - 如何在C/C++中创建一个新进程并在WinXp中获取这个新进程句柄?

我需要知道如何在C/C++代码中获取新创建进程的句柄。我对所有这些Microsoft库了解不多,我刚刚阅读了有关创建流程的两种方法。第一个是通过ShellExcecute调用,第二个是通过CreateProcess,但这些都没有重新生成句柄。我需要知道进程的句柄,因为我希望主线程在继续之前等待进程完成。最重要的是,我希望有人帮我编写一个如下所示的函数:HANDLEcreate_process(/*parameterssameasforShellExecute*/){...}请帮忙。 最佳答案 CreateProcess()返回包含进